package net.cyndeline.GUI

import javafx.scene.Node
import javafx.scene.image.Image

/**
 * Provides graphic objects as Nodes, based on keys unique to
 * each type of object.
 */
trait GraphicsBuffer {
  
  /**
   * Returns a graphical representation of a game component
   * based on its id. It could be a tile, sprite, ASCII symbol etc.
   */
  def get(key: String): Image
  
  /**
   * Returns a particular frame of animation if such exists.
   */
  def get(key: String, frame: Int): Image
  
}